<!--http://konvajs-doc.bluehymn.com/docs/drag_and_drop/Drag_and_Drop.html-->

<!DOCTYPE html>
<html>
  <head>
    <script src="https://unpkg.com/konva@4.0.18/konva.min.js"></script>
    <meta charset="utf-8" />
    <title>Konva Drag and Drop Demo</title>
    <style>
      body {
        margin: 0;
        padding: 0;
        overflow: hidden;
        background-color: #f0f0f0;
      }
    </style>
  </head>
  <body>
    <div id="container"></div>
    <script>
      var width = window.innerWidth
      var height = window.innerHeight

      var stage = new Konva.Stage({
        container: 'container',
        width: width,
        height: height,
      })

      var layer = new Konva.Layer()
      var rectX = stage.width() / 2 - 50
      var rectY = stage.height() / 2 - 25

      var box = new Konva.Rect({
        x: rectX,
        y: rectY,
        width: 100,
        height: 50,
        fill: '#00D2FF',
        stroke: 'black',
        strokeWidth: 4,
        draggable: true,
      })

      // add cursor styling
      box.on('mouseover', function () {
        document.body.style.cursor = 'pointer'
      })
      box.on('mouseout', function () {
        document.body.style.cursor = 'default'
      })

      layer.add(box)
      stage.add(layer)
      console.log(stage.toJSON())
    </script>
  </body>
</html>
Last updated: Apr 12
